AWS WAF(v2) の WCUsの上限緩和をサービスクォータで実施してみた
AWSチームのすずきです。
AWS WAF(V2)、デフォルトでは 1つの ACLあたり、1500 WCUs (Web ACL rule capacity Units) の上限が設定されているため、 マネージドルールとユーザが定義したルール、WCUsの合計値は1500以下で利用する必要があります。
サービスクォータ | デフォルトのクォータ値 |
---|---|
Maximum number of web ACL capacity units in a web ACL in WAF for regional | 1500 |
今回、1500 WCUsを超える AWS WAF ACL を試す必要があり、 サービスクォータを利用した上限緩和申請を試みる機会がありましたので、紹介させていただきます。
AWS Managed Rules
2020年7月時点、AWS提供のマネージドルールは11個。すべて有効化した場合、WCUsの合計値は 1975 となります。
ルール名 | Capacity |
---|---|
Admin protection | 100 |
Amazon IP reputation list | 25 |
Anonymous IP list | 50 |
Core rule set | 700 |
Known bad inputs | 200 |
Linux operating system | 200 |
PHP application | 100 |
POSIX operating system | 100 |
SQL database | 200 |
Windows operating system | 200 |
WordPress application | 100 |
合計 | 1975 |
サービスクォータ
サービスクォータ のダッシュボードより、 「AWS サービス」として「AWS WAF V2」を指定します。
今回、ALB用のWAF設定を行うため、「Maximum number of web ACL capacity units in a web ACL in WAF for regional」を指定しました。
「クォータ引き上げリクエスト」を指定します。
変更を希望するクォータ値を指定します。
サポートケース
サービスクォータを申請したAWSアカウントに、WAFの上限緩和のサポートケースが起票されます。
サポートケースの内容は紹介できませんが、以下の質問に対し英文で回答します。
- WCUsの追加が必要な理由、ユースケース
- 1500WCUs 以上の設定で発生するリクエスト課金の追加コストの確認
- 上限緩和を実施する WAF ACL の ARN
確認
WCUs 1500を超えるルールを設定した ACL が利用可能になりました。
費用
1500を超える WCUs のACLはリクエスト料金が上昇します。 リクエスト数の多い環境では、AWS料金が増加する可能性がある点にご注意ください。
ACLの合計WCUs | per million requests processed |
---|---|
0 - 1500 | $0.6 |
1501 - 2000 | $0.8 |
2001 - 2500 | $1.0 |
まとめ
WCUsの上限緩和にあたりユースケースの確認などが行われる事から、通常はデフォルト上限値の範囲での利用が無難と思われます。
複数のマネージドルールを組み合わせて利用する必要があり、標準の WCUs(1500) が不足する可能性がある場合、充分余裕をもったスケジュールでの上限緩和や動作検証を頂く事をおすすめします。